package com.zim.access.infrastructurre.common;

import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.util.List;

/**
 * @author hanyue
 * @version 1.0
 * @date 2021/12/21 下午11:54
 */
@Data
@Accessors(chain = true)
@ConfigurationProperties(prefix = "access.config")
public class AccessConfig {

    /**
     * 节点设置
     */
    private Node node;

    /**
     * 不同的协议，对应不同的端口
     */
    private List<String> binds;

    /**
     * ETCD 相关配置
     */
    private Etcd etcd;

    @Data
    @Accessors(chain = true)
    public static class Etcd {

        /**
         * etcd 集群, 用逗号分割
         */
        private String url;
    }

    @Data
    @Accessors(chain = true)
    public static class Node {

        /**
         * 节点 ID
         */
        private String id;
    }
}
